package com.atguigu.study.locks;

import java.util.concurrent.TimeUnit;

class Phone{
    public static   synchronized void sendEmail(){

        try {
            TimeUnit.SECONDS.sleep(4);
        } catch (InterruptedException e) {
            e.printStackTrace();
        }
        System.out.println("----email");
    }
    public synchronized void sendSMS(){
        System.out.println("------sms");
    }
    public void hello(){
        System.out.println("------hello");
    }
}

//1 标准访问，请问先打印邮件还是短信
//2 邮件方法暂停4秒，请问先打印邮件还是短信
//3 新增普通hello方法，请问先打印邮件还是hello
//4 变为两部手机，请问先打印邮件还是短信
//5 两个静态同步方法，同一部手机，请问先打印邮件还是短信
//6 两个静态同步方法，用两部手机，请问先打印邮件还是短信
//7 一个静态同步方法，一个普通同步方法，用1部手机，请问先打印邮件还是短信
//8 一个静态同步方法，一个普通同步方法，用2部手机，请问先打印邮件还是短信
public class Lock8Demo {
    public static void main(String[] args) {
        Phone phone = new Phone();
        Phone phone2 = new Phone();
        new Thread(()-> phone.sendEmail(),"t1").start();
        //人为的让t1先执行
        try {
            TimeUnit.MILLISECONDS.sleep(30);
        } catch (InterruptedException e) {
            e.printStackTrace();
        }
        new Thread(()->
//                phone.sendSMS()
//               phone.hello()
                phone2.sendSMS()
              ,"t2").start();
    }
}
